#pragma once

#include "string.h"

class Exception{
public:
	Exception(){}
	Exception(const char *fmt, ...){
		va_list	argPtr;
		va_start(argPtr, fmt);
		Str_VSPrintf(desc, sizeof(desc), fmt, argPtr);
		va_end(argPtr);
	}
	char	desc[4096];
};

class Error:public Exception{
public:
	Error(){}
	Error(const char *fmt, ...){
		char	message[4096];
		va_list	argPtr;
		va_start(argPtr, fmt);
		Str_VSPrintf(message, sizeof(message), fmt, argPtr);
		va_end(argPtr);
		Str_SPrintf(desc,sizeof(desc),"^1Error: %s",message);
	}
};